package com.layjava.common.mybatis.handler;

import lombok.extern.slf4j.Slf4j;

/**
 * Mybatis异常处理器
 *
 * @author Lion Li
 */
@Slf4j
public class MybatisExceptionHandler {
//
//    /**
//     * 主键或UNIQUE索引，数据重复异常
//     */
//    @ExceptionHandler(DuplicateKeyException.class)
//    public R<Void> handleDuplicateKeyException(DuplicateKeyException e, HttpServletRequest request) {
//        String requestURI = request.getRequestURI();
//        log.error("请求地址'{}',数据库中已存在记录'{}'", requestURI, e.getMessage());
//        return R.fail("数据库中已存在该记录，请联系管理员确认");
//    }
//
//    /**
//     * Mybatis系统异常 通用处理
//     */
//    @ExceptionHandler(MyBatisSystemException.class)
//    public R<Void> handleCannotFindDataSourceException(MyBatisSystemException e, HttpServletRequest request) {
//        String requestURI = request.getRequestURI();
//        String message = e.getMessage();
//        if ("CannotFindDataSourceException".contains(message)) {
//            log.error("请求地址'{}', 未找到数据源", requestURI);
//            return R.fail("未找到数据源，请联系管理员确认");
//        }
//        log.error("请求地址'{}', Mybatis系统异常", requestURI, e);
//        return R.fail(message);
//    }

}
